home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Just Call Me Internet
/
Just Call Me Internet.iso
/
prog
/
atari
/
c
/
berm122
/
bermuda.doc
next >
Wrap
Text File
|
1993-08-16
|
27KB
|
740 lines
BERMUDA
The Fidonet compatible mailprocessor
(C) Copyright 1991 by Jac Kersing
ALL RIGHTS RESERVED
Documentation by Jac Kersing and Theo Runia
Bermuda 1.0 reference guide
TABLE OF CONTENTS
Page
Section 1 - General Information 2
How does bermuda work 4
Section 2 - Configuration file command's 5
Commandline options 8
Routing 12
Section 3 - Hints en tips 17
Section 1 GENERAL INFORMATION
Bermuda is a set of programs for processing Fidonet style
messages. It uses an own messagebase format to store message.
This format is know as 'Pandora/The Box' format or is
sometimes referred to as 'QuickBBS' message base. The format
is however not the same as the 'QuickBBS' format used on
MS-DOS computers. This messagebase is however a kind of
standard for the Atari ST line of computers. Almost all
mailprocessors use this format.
Bermuda was developed for tht The Box mailer. But can be
used with other mailers too (e.g. Binkley ST).
This reference guide is just what it is, a reference. If you
want to know more about fidonet and communication then you
might find the user guide of Binkley ST, the documentation of
QuickBBS ST and some other Fidonet documents usefull.
There also exist standard technical documentation about
Fidonet called the FTS and FTSC documents. You should be able
to get them at the larger fidonet nodes.
About the Fidonet:
I still need to tell you something about Fidonet so lets go.
Fidonet consists of several nodes.
Your nodenumber: for example 2:283/333.0
2: Zone, 2 is Europe, 1 USA, 3 Australia etc.
283/ Net, a net is a part of a country. A country is called a
region and consists mostly of several nets.
For example 280 to 286 are The Netherlands which is
called Region 28.
/333 Node, this is the BBS or mail system. It is open to
callers and other mail systems depending on it's
setup.
.0 Point, this is a single user. He uses Fidonet software to
get and read mail. He is the lowest part of
Fidonet.
The basic structure is:
Host-----------Host
/ \
HUB HUB
/ \
Node Node
/ \
Point Point
This is the basic structure although connections between
systems also exist. A Node is also referred to as BOSS if he
has any points under him.
How does bermuda work.
Bermuda consist of 3 basic programs:
Import, Scan and Pack
Import:
Import imports messages that are recieved from another
Fidonet system. Import looks in your inbound or incoming
files directory for mail packets. If found it will extract
the messages from it. A normal packet is called 12345678.PKT,
the name can be almost anything, the extension is always PKT.
An archived mail packet has a different extension, it is the
day of the week with a number: .MO1, .WE2 , meaning :Monday
packet 1, and wednesday packet 2. You don't need to bother
with this, import will. Import will call ARC.TTP if it finds
an archived packet. When unarchived it will import all PKT
files. It will determine what the messages are: Netmail,
Echomail or trash. The file AREAS.BBS is used to see what
areas there are and where to place the messages. Import
will also look in the areas.bbs to see if echomail has to be
send to other systems and will forward echomail messages if
needed.
Scan:
Scan will scan your local messagebase for message that are
entered locally, by you or your users of your BBS.
It will then export and forward the echomail messages to the
systems listed in the areas.bbs for that particular area.
Pack:
Both scan and import can and will forward echomail, they can
place those forwarded messages either in netmail (slow and
diskspace consuming) or put them directly in PKT files
(faster and less diskconsuming). Pack will look for packets
and call ARC.TPP to archive them. Pack will also scan your
netmail areas and forward any messages that need to be
forwarded. For this Pack also needs a Route file (BERMUDA.RTE
or TB.RTE) where you tell pack how and where and via what
route to send mail.
Oke got that? Hope so if not ASK your Host,Sysop,Boss etc.
Before you start installing your software you should ask your
Host,Sysop,Boss etc. for your nodenumber and other relevant
information.
The configuration file.
Bermuda needs a configuration file so it knows who it is and
what it should do. This file is called BERMUDA.CFG or if that
does not exists TB.CFG (from The Box).
The configuration file consists of keywords that are listed
here. If you place a semi colon (;) in front of a line it is
considered to be a comment line and is ignored.
The keywords here are only needed for Bermuda, if you use The
Box you should read that manual too as The Box needs many more
keywords.
ADDRESS zone:net/node.point [fakenet]
This statement (or several if you have several
nodenumbers) is the nodenumber issued by your Host or
Boss (in cases you'r a point). A Node should use .0 for
the pointnumber.
There is one optional number and that is your fakenet
in case you are a point or you are a node with points.
The fakenet is a small trick because Fidonet is not all
4D (4 dimensional, for points). The fakenet is supplied
by your region coordinator. It is very important to do
this the right way. Also your fakenet may not show up
in messages. If you use the fakenet statement then
Bermuda will expand all fakenet addresses in 4D
addresses.
Example: ADDRESS 2:282/301.2 6301
APPLICATION <anything>
Ignored by The Box and Bermuda. May be used by other
programs to store information in the config file.
Example: APPLICATION Logreader c:\tb\tb.log
HOLD <path>
This is the path to your outbound mail area. Here are
the mail packets stored that are to be send. Do NOT use
the directory yourself it is for Bermuda and The Box
only!
Example: HOLD C:\TB\OUTBOUND\
KEY [#id] [!password] nodenumber <nodenumber...>
With KEY you specify the password(s) you use with the
system you exchange mail with. This password is used by
The Box for mailsessions and Bermuda puts it into the
mailpackets.
Example: KEY !JAC 2:283/333.0
Means: use JAC as mailsession and packet pasword for
283/333.0
With the #id parameter you can alter your address for a
particular node. Usefull when using alternets or being
multipoint. Bermuda will change the from field and the
number in the origin to the ID for mail that is send
to the nodes you mention after #id.
Example: KEY #90:100/100.0 90:101/333.0
This will alter your From field and nodenumber in
echomail to 90:100/100.0 for mail that is send to
90:101/333.0. Please note that you also need to make an
address line for 90:100/100.0 as this is your number
for zone 90. You can also use 90:ALL, this means all
nodes for zone 90.
Example: KEY #90:100/100.0 90:ALL
Your system will use 90:100/100.0 for ALL 90 zone nodes.
LOGLEVEL <nr.>
Loglevel to be used. 1 gives the most detailed
information and 6 the lowest
Example: LOGLEVEL 1
NETFILE <path>
Path to area for incoming mail and files. Your mailer
puts all incoming files here. The *.PKT files and
*.MO?, *.TU?, *.WE?, *.TH?, *.FR?, *.SA?, *.SU? are the
archived mail packets. You should not fiddle with those
that's import's task.
Example: NETFILE C:\TB\INBOUND\
NETMAIL <path>
This points to your netmail area. Use full path and
name but use NO extension. Filenames should be max 8
characters but you can also use numbers. They should be
always 4 digits: 0001
Example: NETMAIL C:\TB\NETMAIL
or: NETMAIL C:\TB\0001
STATUSLOG <file>
The name and path of your logfile
Example: STATUSLOG C:\TB\TB.LOG
SYSOP <name>
The name of the sysop.
Example: SYSOP Jac Kersing
Commandline options
You can specify several options on the commandline of the
Bermuda utils. This is very important.
IMPORT:
-A <string>
Define the archiver to use. Default import and pack
search for ARC.TTP in the Bermuda directory.
Example: -A c:\tb\whatarc.ttp x
-G RESERVED DO NOT USE
-I RESERVED DO NOT USE
-K Keep arcmail packets. Import renames them.
-P Export message directly to packets. If you are a node
that is also sending mail to other systems or if you
have points you should use this. Mail for the other
systems is then directly put into a packet so that Pack
only needs to archive them
-R If used once mail is only tossed if the sender is also
mentoined in the areas.bbs for that particlar area. If
used twice then the password in the mail packet is also
checked.
-S Ask for packetname, for manual processing of mail
packets.
-T Write to the logfile.
-V Verbose logging. May be used several times but once is
usually enough.
SCAN:
-G RESERVED DO NOT USE
-K RESERVED DO NOT USE
-M n Write a maximum of n echomail messages.
-P Same as with import
-Q Quite mode, only gives limited information on the screen
-T Same as with import
PACK:
-A Same as with import
-S To start an IF statement in the route file. Read that
part of the documentation for more info.
-T Same as with import
Routing of mail
This part is about how and where to send mail to.
The first important file is the AREAS.BBS file. In this file
you put the names and paths of the echomail areas you receive
and send. So the systems that get the mail areas from you are
also mentioned here.
The file AREAS.BBS must be in the same directory as the
Bermuda package is in and/or the environment variable MAILER
points to.
The first line of the areas.bbs is the default origin line.
This is the line that scan puts under every echomail
messages:
* Origin Jac's mailbox system (2:283/333)
Scan puts the nodenumber behind it itself. You must take care
that the origin line is not longer than 1 line. Take in
account the length of the * Origin and nodenumber.
The next lines are the areas. Example:
Jac's mailbox system
c:\thebox\msgs\0001 MAIL
c:\thebox\msgs\0002 ATARIST 2:283/3
c:\thebox\msgs\0003 THE-BOX 2:283/3
Lines beginning with a semicolon (;) will be ignored. Every
line consists of:
Areapath Fidonet-name Nodenumber(s)
The filename should not have an extension as it is stored
like c:\tb\msgs\0001.hdr and c:\tb\msgs\0001.msg where the
*.HDR file is the header file and *.MSG contains the raw
messagetext. The filename can be anything you like but we use
numbers (always 4 digits!) to make it more clear.
The second parameter is the name of the area, this must be
the official Fidonet name.
The third and following parameters are the nodenumbers of the
systems from where you recieve the area from and/or you send
the area to. Points can be displayed like .2 instead of
2:283/333.2 so they take less room.
There are a couple of special areanames (the second
parameter):
MAIL For the netmail areas, no nodenumers allowed after
this!
BADMSGS Bad messages, all corrupted messages are put into
here, wrongly addressed messages stay in the netmail
area.
LOCAL: This is for areas you only have locally and that
should not be send. Scan skips these. You must not
place any nodenumbers after this name. Every area
that does not have any nodenumbers after it's name
is considered a 'local' area.
Example: LOCAL:SYSOPMAIL.
There are also a couple of special options. You can put
BEFORE every area a line beginning with - (minus).The -
(minus) indicates that this is a special option. An example:
Jac's mailbox system
c:\thebox\msgs\0001 MAIL
-DAYS 12
c:\thebox\msgs\0002 ATARIST 2:283/3
-ORIGIN Jac's box
c:\thebox\msgs\0003 THE-BOX 2:283/3
The -DAYS was used for comscan, which is not in use anymore,
but some other crunchers or packers use this. A cruncher
deletes messages marked for deletion. The -DAYS is used to
delete older messages then 12 days. This option is not used
by the Bermuda package, but is allowed as some other
crunchers may be able to use it. The -DAYS 12 is ment for the
area ATARIST in this case.
The -ORIGIN is used to change the default origin line (the
first line in the areas.bbs) for the next area. So the area
THE-BOX will not show 'Jac's mailbox system' in the origin
but 'Jac's box'. This way you can define a different origin
for every area. You migh want to use different origins for
national areas and international areas.
The TB.RTE file:
This is more complex. In this file you tell the Bermuda
package how to route (send) mail and via which paths.
In TB.RTE we use wildcards, so first a small piece about
that:
WILDCARDS:
The '*' and '?' are the so called wildcards. They are almost
the same as in most commandline interpreters. So '*' can
replace any sequence of zero or more charcters, and '?' can
replcae any single character. Unlike other programs however
the packer DOES take characters after '*' into account. So,
'P*' or 'P*K' can replace PACK, but 'P*X' can not.
In this way nodenumbers are treated, '2:*' applies to
2:283/333 so does '2:2*3, but '2:?2*' or '2:*4' does not
apply. There is a special notation for points, see POINTS.
KEYWORDS:
Keywords can be divided into three different groups. the
first one applies to message handling, the second one to
packets, and the third to the route file itself.
Group 1
ROUTE-TO [CRASH] [FILE] <node> <nodes>
Messages for <nodes> are sent to <node>.
NO-ROUTE [CRASH] [FILES] <nodes>
Messages for <nodes> are sent directly.
FORWARD-FROM [CRASH] [FILE] <nodes1> TO <nodes2>
Messages from <nodes1> to <nodes2> are routed. Messages
from or to other nodes are not routed. They stay on
your system.
Group 2
ARCMAIL <nodes>
Mail to <nodes> is arced.
This shold only be used if you are sure that the
recieving node accepts arcmail.
HOLD <nodes>
Normal mail to <nodes> is not sent. Packets are put on
hold to be taken by the recieving node when it calles
you.
POLL <nodes>
Call <nodes> for mail, also when you have nothing to
send.
REDIRECT [CRASH] <node> <nodes>
Packets for <nodes> are sent to <node>
This can be done only if these packets are not arced.
Group 3
IF <tag>
Line after this line are processed only if -S <tag> is
put on the commandline of pack. Processing continues
until the next IF or the end of the route file.
Example: Pack -S poll
(TB.RTE):
ARCMAIL 283/3
ROUTE-TO 283/3 *
IF POLL
POLL 283/3
If -S poll is used the command's after the IF POLL are
used, in this case the system will start polling 283/3.
Other keywords are: OURNET, BOSS, POINTS and ALL
POINTS:
For sysops:
Points must be specified by .<number> and not by their full
address. Use of that is illegal.
For points:
The route file for points is quite simple. For a single
point:
ARCMAIL BOSS
ROUTE-TO BOSS ALL
will do. If crashmail should be routed to the boss
ROUTE-TO CRASH BOSS ALL
can be added.
Multi points should add
NO-ROUTE <zone>:<net>/<node>
for all bosses expect for their first.
ADVANCED TOPICS:
This is where it gets complicated..
What would you think of:
ROUTE-TO 2:2/$1 *:*
NO-ROUTE 2:*
This line takes care of zone routing. All in one line!
Well allright, we need the second line to keep messages from
our own zone here. They are routed normally.
Want to understand it? We will try to explain it then.
Let's start at the beginning:
Pack reads a message containing a source and a destination
address. First it checks if the source address is ours. If
not the program checks for FORWARD-FROM .. TO .. to see if
the message can be routed. If a crash message can't be
processed by a FORWARD-FROM CRASH line it's crash bit is
reset and the message is routed as a normal one.
If a message can be send after these checks the destination
address is read and converted to a character string, like
'2:283/333'. This string is used to check for applicable
lines that can be used to process the message. A line applies
if the nodenumbers match. If a string has wildcards, all
wildcards are replaced by the strings they match. So,
'2:283/333' is matched by '2:*/*' the first wildcard is
translated to 283 and the other to 333. These translations
can be used in the first node number after ROUTE-TO. You can
use them by using $x (x=1..9) in the nodenumber, where x is
the number of the wildcard counting left to right. In this
example $1 translates to 283 and $2 to 333.
You should take care that there are enough wildcards to match
these $x.
Translations of unmatched $x will give unpredictable results.
In the example we started with $1 translating to the first
wildcard which is the zonenumber. So messages to other zones
are routed to 2:2/<zone>
The is another example:
ROUTE-TO 28$1/0 28?/*
Now a message to 283/333 is sent to 283/0, a message to
282/301 to 282/0 and so on. A missing part of a nodenumber is
replaced by the value of the corresponding part of your own
private number. In our setup both 283/333 and 282/301 apply
to zone 2.
The use of MAGIC WORDS in lines that contain '$x@ expressions
can lead to unpredictable results. Please don't use them.
In normal lines MAGIC WORDS have the following translation:
ALL *
OURNET <ourzone>:<ournet>/*
BOSS <bosszone>:<bossnet>/<bossnode>
POINTS .*
PS Messages that are entered locally (i.e. local bit is set)
are always sent. A message for a node that is not mentioned
in the route file is sent directly. This applies to normal
mail and crashmail.
Section 3:
What there is else to know.
Paths:
Bermuda uses a environment variable to find it's
configuration files and so do some other utils.
You should use MAILER and let that point to the directory
bermuda, pack/import/scan and the configuration files, are
in. You can set your environment variable if you use a
commandline interpreter like Pcommand. Put into the
autoexec.bat: SET MAILER=C:\TB\
Batch files:
To run a mailer system, point BBS etc. you must either use a
commandline interpreter or a special shell. If you use a
commandline interpreter you will need to make batch files.
Your mailer will give certain errorlevels (return codes) when
it exists. The errorlevel depends on the action to be taken.
An errorlevel of 20 could mean 'mail recieved' so you need to
startup your import program. An example:
:start
TB Unattanded
If ERRORLEVEL 20 goto IMPORT
If ERRORLEVEL 21 goto SCAN
:import
import -t -p -a c:\tb\whatarc.ttp x
scan -t -a c:\tb\whatarc.ttp a
goto start
:scan
scan -t -p
pack -t -s call
goto start
Just to give you an idea. Try it out.
Arcmail:
Default import and pack use ARC.TTP But arcmail is not the
most used anymore as better compression techniques are used
(LZH/ZIP). To be able to use that we need a special program,
in this case called whatarc.
In stead of calling arc you put -A c:\tb\whatarc.ttp on the
commandline EVERY time pack and import is run. Whatarc wil
make it possible to send and recieve ARC/LZH/ZIP/ARJ mail.
Whatarc has it's own documentation and is not part of the
Bermuda package.
Exporting mail for other systems.
Systems that send mail to other systems or/and have points
should put -P on the commandline of import and scan. In stead
of routing all mail via the netmail area all mail is directly
put into packets which pack only needs to archive. This makes
processing mail for other systems MUCH faster and it takes a
lot less diskspace.
Using Bermuda with Binkley ST
Bermuda was designed to be used with The Box as Fidonet
mailer, but you can use Bermuda with Binkley ST too. The
major problem is that the outbound folder of Binkley ST has a
different format the The Box. To make it possible for Bermuda
to work with Binkley ST you need to convert the outbound
folder. To do this there is Packconv, a package that consists
of 2 programs called BINK2TB and TB2BINK. BINK2TB converts
the outbound from Binkley ST in The Box format and TB2BINK
does the opposite. You need to run BINK2TB every time before
you start up any of the Bermuda programs and run TB2BINK
before you start up Binkley ST. Makes you wonder why there
isn't a standard format... Packconv also is not part of the
Bermuda package. But both whatarc and packconv can be found
at most Atari ST based Fidonet systems.
Oke I have talked enough, set it up and have fun. And don't
forget: always read the documentation, and ask other people
if you have questions. That's exactly what Fidonet is for.
As a final word we would like to thank all the betatesters
and people with idea's for their help.
Greetings Theo Runia & Jac Kersing